package com.han.fu.api.business.model.ao;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

/**
 * 用户
 *
 * @author star
 * @date 2021-08-05
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class UserAddAo {

    /**
     * 账号
     */
    @NotBlank(message = "账号不能为空")
    @Size(max = 50, message = "账号最长不能超过50")
    private String account;

    /**
     * 密码(需BASE64编码)
     */
    @NotBlank(message = "密码不能为空")
    @Size(max = 50, message = "密码最长不能超过50")
    private String password;

    /**
     * 名称
     */
    @NotBlank(message = "名称不能为空")
    @Size(max = 200, message = "名称最长不能超过200")
    private String name;

    /**
     * 角色
     */
    @NotBlank(message = "角色不能为空")
    @Size(max = 10, message = "角色最长不能超过10")
    private String role;

    /**
     * 联系人
     */
    @Size(max = 50, message = "联系人最长不能超过50")
    private String contact;

    /**
     * 联系电话
     */
    @NotBlank(message = "联系电话不能为空")
    @Size(max = 11, message = "联系电话最长不能超过11")
    private String phone;

    /**
     * 省份
     */
    @Size(max = 20, message = "省份最长不能超过20")
    private String province;

    /**
     * 城市
     */
    @Size(max = 20, message = "城市最长不能超过20")
    private String city;

    /**
     * 地址
     */
    @Size(max = 200, message = "地址最长不能超过200")
    private String address;

    /**
     * 部门ID
     */
    @NotNull(message = "部门ID不能为空")
    private Integer departmentId;

    /**
     * 邮箱
     */
    @Size(max = 50, message = "邮箱最长不能超过50")
    private String email;

}